home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
The CICA Windows Explosion!
/
The CICA Windows Explosion! - Disc 1.iso
/
util
/
winsql23.zip
/
README.TXT
< prev
next >
Wrap
Text File
|
1994-09-28
|
10KB
|
246 lines
WinSQL Version 2.3 - 27 Sep 1994
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
1 Introduction
~ ~~~~~~~~~~~~
WinSQL is a single-user database system for Windows 3.1, designed to
assist in the teaching/learning of SQL. It is intended to be used in
conjunction with typical introductory database courses, rather than
in a completely stand-alone self-teaching situation.
WinSQL is not aimed at professional developers who are probably
already familiar with SQL. Compared to other Windows-based database
systems (such as Access, Paradox for Windows, etc), WinSQL is a small
low-budget system which lacks many features, but it has two advantages:
1. It is free (for non-commercial usage), allowing students to use it
on their home computers, without any licensing hassles.
2. It provide special features for illustrating the workings of SQL
queries. For example, it allows the user the options of seeing
how rows are matched in joins, what results are returned by
subqueries and which actual rows are grouped by a "group by"
clause. (These options are controlled from the View menu.) Unlike
some educational software, these displays are not hardcoded for
predetermined queries applied to a predetermined database
structure. Instead, they are generated dynamically, at execution
time.
To avoid possible misunderstandings, I point out that WinSQL does not
currently provide:
- full SQL support; (It provides most but not all of SQL-86.)
- databases with tables of more than a few thousand rows;
- forms;
- client-server support (i.e. no ODBC, IDAPI, etc);
- a host language interface. (A C++ interface exists, but is
undocumented and subject to change. The source code is not
available.)
More specific details on the limitations can be found in the help file.
2 Installation of WinSQL
~ ~~~~~~~~~~~~~~~~~~~~~~
1. WinSQL requires a 386 (or better), running Windows 3.1 (or higher),
with a minimum of 1.5 Mb of free disk space.
2. Use PKUNZIP 2.04 to unpack the .zip file either to a floppy disk or
to a temporary directory on your harddisk (e.g. C:\INSTALL). For
simplicity, the following instructions assume that a floppy disk is
used.
3. By default, the installation procedure will create the directory:
c:\winsql
This contains the WinSQL executables and the sample databases. If
you wish to use a different disk or directory, you will be able to
specify this during installation.
4. WinSQL can be installed using any of the following (equivalent)
methods.
Method 1: If you're not already running Windows, enter the command:
win a:setup
Method 2: Run Window's File Manager.
Double-click on the a: drive icon.
When the a: files appear, double-click on setup.exe.
After installation, press Ctrl-F4 to close the a: window.
Method 3: From Windows's Program Manager, select File | Run, then
enter the command line:
a:setup
and press the Ok button.
In any case, the setup program allows you to specify where you wish
the files to be installed and whether you want the sample databases
to also be installed. (These can be installed separately at a
later stage, by rerunning the setup program.)
3 How to get newer versions of WinSQL
~ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
New versions of WinSQL are placed on two sites:
- on ftp.fit.qut.edu.au, under the directory /pub/winsql.
- on ftp.cica.indiana.edu, under the directory /pub/pc/win3/util.
In each case, a filename of the format "winsqlnn.zip" is used, where
"nn" is replaced by the version number e.g. winsql22.zip contains
version 2.2.
Because of the large numbers of files uploaded to cica, it may take a
week or two from when WinSQL is uploaded to cica to when it is
placed in the util subdirectory.
I will also post an announcement of each release to the three Internet
newsgroups: comp.database; comp.edu; and comp.os.ms-windows.announce.
If you have a favourite BBS or file server that does not have a copy,
feel free to put a copy there too.
4 Future development
~ ~~~~~~~~~~~~~~~~~~
While the current version lacks several desirable features, I hope
that some people will find it useful in its current form (even if its
users later move on to bigger and better database systems). In
future versions, I plan to: (a) improve the coverage of the SQL
language; (b) improve aspects of the user interface; and (c) allow
larger database tables to be stored.
I would very much appreciate hearing from you if you use WinSQL and
find problems, or if you can suggest ways in which the user interface
could be improved. My email address is:
J.Reye@qut.edu.au
5 Change Log
~ ~~~~~~~~~~
[Changes from version 2.2 to 2.3]
Enhancements:
1. Printing is now supported.
2. Query windows are now based on personally-developed code, rather
than the edit control provided by Windows. This removes the 32K
restriction which previously prevented the opening of large ASCII
files. When they contain a long sequence of "create table" and
"insert" statements (separated by semicolons), such files are
often useful as a portable way of setting up a database.
3. The "progressive execution" options have been enhanced to give the
user a wider range of choice, from continuous feedback to feedback
on demand.
4. Clicking on a results row automatically moves the animation bar to
that row, in much the same way that items are selected in any
Windows list box.
5. A new "automatically activate windows" option is available
(disabled by default). When enabled and the mouse is moved into
any window, that window automatically becomes the active window,
without the user having to click on that window. For some
activities, this makes the system easier to use, but it can be a
nuisance when cascaded windows are unintentionally activated.
So, it's an option which can easily be turned on or off.
Bugs fixed:
1. A bug in "drop table" has been removed. A warning message box,
associated with this bug, will no longer appear.
2. A bug in the scanning of decimal literals has removed. This bug
caused values such as 1.23 to be inserted as 1.22.
3. As in ANSI SQL, WinSQL allows a table to be joined to itself.
However, in a few cases of this, the query optimiser generated
the wrong code, leading to a GPF when the query was executed.
4. A "select distinct" query, which also contains an "or" in its
where clause, did not always remove all duplicate rows.
5. A bug in "not like" has been removed.
6. There was a bug in the generated code for where-clause conditions
which compared one column against another, and the two columns
had different numbers of decimal places. This has now been fixed.
7. Another bug related to numeric columns whose values are stored
as 2-byte binary integers (e.g. decimal(3), decimal(4)). For
these types of columns, the system's indexing structure was not
always built correctly, leading to incorrect results being
returned by some queries with where-clauses involving such columns.
This bug did not affect 1-byte (e.g. decimal(2)) or 4-byte columns
(e.g. decimal(5)), which is the main reason why it remained
undetected until recently.
8. It is possible (although fairly rare) to have a subquery which is
correlated with a column in a group-by clause. Previously, such
subqueries were not analysed correctly, leading to the generation
of incorrect results.
9. A bug in the setup procedure required the directory name "disk1"
to be used if WinSQL was installed from a harddisk directory
(rather than from a floppy disk). This has been fixed so that any
directory name can be used.
[Changes from version 2.1 to 2.2]
Bugs fixed:
1. When the PerformanceOption was set to fastest and a database was
opened, some additional memory was allocated unnecessarily.
2. When a database was opened, the system overroad the user's
PerformanceOption setting.
3. Some tables in (relatively) large databases appeared to be empty
when browsed, due to an addressing overflow.
[Changes from version 2.0 to 2.1]
Enhancements:
1. In previous versions, a query could only be saved if it was the
currently-active window i.e. with a highlighted title bar. From
V2.1 on, a query can be saved if it, or any one of its "results"
windows, is the currently-active window.
Bugs fixed:
1. A screen repainting bug corrupted the displayed values, only when
scrolling a window to the left.
2. A minor syntax-check bug resulted in an incorrect error message, in
the fairly rare case of using an invalid table alias in a
correlated subquery.
3. The user always had the option of suppressing the Transcript
window, allowing the Query window to be wider. However, the system
sometimes automatically recreated the Transcript, even though the
user did not wish to see it.
4. When saving a newly-created query, the system would display an
unnecessary prompt for a filename, even after the user had
specified one. (This bug was unintentionally introduced when
replacing the Borland File Dialog box with the MS Common Dialog box.)
5. Because of a bug in a new optimisation technique, the values of the
"J" column were loaded incorrectly, in the "SPJ" database. This
caused them to be displayed with an incorrect (non-blank) leftmost
character, for both the "J" and "SPJ" tables. If you have a V2.0
copy of SPJ.DB, then you should install the latest version of this
file.
Jim Reye
September 1994